home *** CD-ROM | disk | FTP | other *** search
/ NeXTSTEP 3.3 (Developer)…68k, x86, SPARC, PA-RISC] / NeXTSTEP 3.3 Dev Intel.iso / NextDeveloper / Headers / mach / thread_special_ports.h < prev    next >
C/C++ Source or Header  |  1995-02-14  |  3KB  |  103 lines

  1. /* 
  2.  * Mach Operating System
  3.  * Copyright (c) 1991,1990,1989,1988,1987 Carnegie Mellon University
  4.  * All Rights Reserved.
  5.  * 
  6.  * Permission to use, copy, modify and distribute this software and its
  7.  * documentation is hereby granted, provided that both the copyright
  8.  * notice and this permission notice appear in all copies of the
  9.  * software, derivative works or modified versions, and any portions
  10.  * thereof, and that both notices appear in supporting documentation.
  11.  * 
  12.  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
  13.  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
  14.  * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
  15.  * 
  16.  * Carnegie Mellon requests users of this software to return to
  17.  * 
  18.  *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
  19.  *  School of Computer Science
  20.  *  Carnegie Mellon University
  21.  *  Pittsburgh PA 15213-3890
  22.  * 
  23.  * any improvements or extensions that they make and grant Carnegie Mellon
  24.  * the rights to redistribute these changes.
  25.  */
  26. /*
  27.  * HISTORY
  28.  * $Log:    thread_special_ports.h,v $
  29.  * Revision 2.6  93/01/14  17:48:03  danner
  30.  *     Cleanup.
  31.  *     [92/06/10            pds]
  32.  * 
  33.  * Revision 2.5  92/01/15  13:44:57  rpd
  34.  *     Changed MACH_IPC_COMPAT conditionals to default to not present.
  35.  * 
  36.  * Revision 2.4  91/05/14  17:01:15  mrt
  37.  *     Correcting copyright
  38.  * 
  39.  * Revision 2.3  91/02/05  17:36:38  mrt
  40.  *     Changed to new Mach copyright
  41.  *     [91/02/01  17:21:48  mrt]
  42.  * 
  43.  * Revision 2.2  90/06/02  15:00:15  rpd
  44.  *     Converted to new IPC.
  45.  *     [90/03/26  22:41:20  rpd]
  46.  * 
  47.  * Revision 2.1  89/08/03  16:06:13  rwd
  48.  * Created.
  49.  * 
  50.  * Revision 2.3  89/02/25  18:41:23  gm0w
  51.  *     Changes for cleanup.
  52.  * 
  53.  * 17-Jan-88  David Golub (dbg) at Carnegie-Mellon University
  54.  *    Created.
  55.  *
  56.  */
  57. /*
  58.  *    File:    mach/thread_special_ports.h
  59.  *
  60.  *    Defines codes for special_purpose thread ports.  These are NOT
  61.  *    port identifiers - they are only used for the thread_get_special_port
  62.  *    and thread_set_special_port routines.
  63.  *    
  64.  */
  65.  
  66. #ifndef    _MACH_THREAD_SPECIAL_PORTS_H_
  67. #define _MACH_THREAD_SPECIAL_PORTS_H_
  68.  
  69. #define THREAD_KERNEL_PORT    1    /* Represents the thread to the outside
  70.                        world.*/
  71. #define THREAD_EXCEPTION_PORT    3    /* Exception messages for the thread
  72.                        are sent to this port. */
  73.  
  74. /*
  75.  *    Definitions for ease of use
  76.  */
  77.  
  78. #define thread_get_kernel_port(thread, port)    \
  79.         (thread_get_special_port((thread), THREAD_KERNEL_PORT, (port)))
  80.  
  81. #define thread_set_kernel_port(thread, port)    \
  82.         (thread_set_special_port((thread), THREAD_KERNEL_PORT, (port)))
  83.  
  84. #define thread_get_exception_port(thread, port)    \
  85.         (thread_get_special_port((thread), THREAD_EXCEPTION_PORT, (port)))
  86.  
  87. #define thread_set_exception_port(thread, port)    \
  88.         (thread_set_special_port((thread), THREAD_EXCEPTION_PORT, (port)))
  89.  
  90.  
  91. /* Definitions for the old IPC interface. */
  92.  
  93. #define THREAD_REPLY_PORT    2    /* Default reply port for the thread's
  94.                        use. */
  95.  
  96. #define thread_get_reply_port(thread, port)    \
  97.         (thread_get_special_port((thread), THREAD_REPLY_PORT, (port)))
  98.  
  99. #define thread_set_reply_port(thread, port)    \
  100.         (thread_set_special_port((thread), THREAD_REPLY_PORT, (port)))
  101.  
  102. #endif    /* _MACH_THREAD_SPECIAL_PORTS_H_ */
  103.